import { RMIProxyObject } from "../../Engine/RMI/RMIProxyObject";
import { IOperationPrx } from "./IOperationPrx";
import { AMI_IOperation_addWuXingAttribute } from "./AMI_IOperation_addWuXingAttribute";
import { EWuXingAttribute } from "../Public/EWuXingAttribute";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { Outgoing } from "../../Engine/RMI/Outgoing";
import { AMI_IOperation_answerBossQuestion } from "./AMI_IOperation_answerBossQuestion";
import { SEntityId } from "../Public/SEntityId";
import { AMI_IOperation_beginCollect } from "./AMI_IOperation_beginCollect";
import { AMI_IOperation_chaosFightComposeSkill } from "./AMI_IOperation_chaosFightComposeSkill";
import { AMI_IOperation_convey } from "./AMI_IOperation_convey";
import { SPoint } from "../Public/SPoint";
import { AMI_IOperation_crossDefenseLearnBless } from "./AMI_IOperation_crossDefenseLearnBless";
import { AMI_IOperation_crossDefenseTowerOper } from "./AMI_IOperation_crossDefenseTowerOper";
import { AMI_IOperation_endCollect } from "./AMI_IOperation_endCollect";
import { AMI_IOperation_endFishStatus } from "./AMI_IOperation_endFishStatus";
import { AMI_IOperation_endFly } from "./AMI_IOperation_endFly";
import { AMI_IOperation_endRoastFish } from "./AMI_IOperation_endRoastFish";
import { AMI_IOperation_enterFishStatus } from "./AMI_IOperation_enterFishStatus";
import { AMI_IOperation_explorer } from "./AMI_IOperation_explorer";
import { AMI_IOperation_fight } from "./AMI_IOperation_fight";
import { SFightTo } from "../Public/SFightTo";
import { AMI_IOperation_fish } from "./AMI_IOperation_fish";
import { AMI_IOperation_getAutoFeedSettings } from "./AMI_IOperation_getAutoFeedSettings";
import { AMI_IOperation_getBossQuestion } from "./AMI_IOperation_getBossQuestion";
import { AMI_IOperation_getCopySealItem } from "./AMI_IOperation_getCopySealItem";
import { AMI_IOperation_getCrossSecretItem } from "./AMI_IOperation_getCrossSecretItem";
import { AMI_IOperation_getDirectionCopyItem } from "./AMI_IOperation_getDirectionCopyItem";
import { AMI_IOperation_getExplorerRecords } from "./AMI_IOperation_getExplorerRecords";
import { AMI_IOperation_getGroupBuyInfo } from "./AMI_IOperation_getGroupBuyInfo";
import { AMI_IOperation_getMagicTowerQuestion } from "./AMI_IOperation_getMagicTowerQuestion";
import { AMI_IOperation_getMountCopyDrop } from "./AMI_IOperation_getMountCopyDrop";
import { AMI_IOperation_getUpgradeCrossSecretItem } from "./AMI_IOperation_getUpgradeCrossSecretItem";
import { AMI_IOperation_guildDefenseStructureUpgrade } from "./AMI_IOperation_guildDefenseStructureUpgrade";
import { AMI_IOperation_move } from "./AMI_IOperation_move";
import { SeqPointHelper } from "../Public/SeqPointHelper";
import { AMI_IOperation_pass } from "./AMI_IOperation_pass";
import { EPassType } from "./EPassType";
import { AMI_IOperation_pickFishItem } from "./AMI_IOperation_pickFishItem";
import { AMI_IOperation_pikeEntity } from "./AMI_IOperation_pikeEntity";
import { AMI_IOperation_pikeItem } from "./AMI_IOperation_pikeItem";
import { DictStrIntHelper } from "../Public/DictStrIntHelper";
import { AMI_IOperation_registGroupBuy } from "./AMI_IOperation_registGroupBuy";
import { AMI_IOperation_removeSelfBuffer } from "./AMI_IOperation_removeSelfBuffer";
import { AMI_IOperation_revival } from "./AMI_IOperation_revival";
import { ERevivalType } from "./ERevivalType";
import { EPrictUnit } from "../Public/EPrictUnit";
import { AMI_IOperation_saveAutoFeedMemory } from "./AMI_IOperation_saveAutoFeedMemory";
import { SeqIntHelper } from "../Public/SeqIntHelper";
import { AMI_IOperation_saveAutoFeedSettings } from "./AMI_IOperation_saveAutoFeedSettings";
import { DictIntStrHelper } from "../Public/DictIntStrHelper";
import { AMI_IOperation_setMode } from "./AMI_IOperation_setMode";
import { EEntityFightMode } from "../Public/EEntityFightMode";
import { AMI_IOperation_setPetGoal } from "./AMI_IOperation_setPetGoal";
import { AMI_IOperation_sixtyCopyOperation } from "./AMI_IOperation_sixtyCopyOperation";
import { SeqEntityIdHelper } from "../Public/SeqEntityIdHelper";
import { AMI_IOperation_startFly } from "./AMI_IOperation_startFly";
import { AMI_IOperation_startRoastFish } from "./AMI_IOperation_startRoastFish";
import { AMI_IOperation_sunBathMakeUp } from "./AMI_IOperation_sunBathMakeUp";
import { AMI_IOperation_useItemInCrossSecret } from "./AMI_IOperation_useItemInCrossSecret";
import { AMI_IOperation_useItemInDefenseCopy } from "./AMI_IOperation_useItemInDefenseCopy";
import { AMI_IOperation_useItemInUpgradeCrossSecret } from "./AMI_IOperation_useItemInUpgradeCrossSecret";
import { AMI_IOperation_useSkillInDefenseCopy } from "./AMI_IOperation_useSkillInDefenseCopy";
import { SDefenseUseSkill } from "../Public/SDefenseUseSkill";
import { AMI_IOperation_useSocoreInDefenseCopy } from "./AMI_IOperation_useSocoreInDefenseCopy";
import { AMI_IOperation_useSpecailSkillInFireIsland } from "./AMI_IOperation_useSpecailSkillInFireIsland";
type int = number;
//class IOperationPrxHelper

export class IOperationPrxHelper extends RMIProxyObject
  implements IOperationPrx {
  constructor() {
    
    super();this.name = "IOperation";
    return;
  }

  public addWuXingAttribute_async(
    arg1: AMI_IOperation_addWuXingAttribute,
    arg2: EWuXingAttribute
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("addWuXingAttribute");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public answerBossQuestion_async(
    arg1: AMI_IOperation_answerBossQuestion,
    arg2: SEntityId,
    arg3: string
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("answerBossQuestion");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    loc3.writeString(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public beginCollect_async(
    arg1: AMI_IOperation_beginCollect,
    arg2: SEntityId
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("beginCollect");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public chaosFightComposeSkill_async(
    arg1: AMI_IOperation_chaosFightComposeSkill,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("chaosFightComposeSkill");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public convey_async(
    arg1: AMI_IOperation_convey,
    arg2: int,
    arg3: SPoint,
    arg4: int,
    arg5: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("convey");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    arg3.__write(loc3);
    loc3.writeInt(arg4);
    loc3.writeInt(arg5);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public crossDefenseLearnBless_async(
    arg1: AMI_IOperation_crossDefenseLearnBless,
    arg2: int,
    arg3: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("crossDefenseLearnBless");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeInt(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public crossDefenseTowerOper_async(
    arg1: AMI_IOperation_crossDefenseTowerOper,
    arg2: int,
    arg3: SEntityId,
    arg4: SPoint,
    arg5: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("crossDefenseTowerOper");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    arg3.__write(loc3);
    arg4.__write(loc3);
    loc3.writeInt(arg5);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public endCollect_async(
    arg1: AMI_IOperation_endCollect,
    arg2: SEntityId
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("endCollect");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public endFishStatus_async(arg1: AMI_IOperation_endFishStatus): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("endFishStatus");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public endFly_async(arg1: AMI_IOperation_endFly): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("endFly");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public endRoastFish_async(
    arg1: AMI_IOperation_endRoastFish,
    arg2: string
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("endRoastFish");
    var loc3;
    (loc3 = new SerializeStream()).writeString(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public enterFishStatus_async(
    arg1: AMI_IOperation_enterFishStatus,
    arg2: SPoint
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("enterFishStatus");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public explorer_async(
    arg1: AMI_IOperation_explorer,
    arg2: int,
    arg3: int,
    arg4: boolean
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("explorer");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeInt(arg3);
    loc3.writeBool(arg4);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public fight_async(arg1: AMI_IOperation_fight, arg2: SFightTo): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("fight");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public fish_async(
    arg1: AMI_IOperation_fish,
    arg2: string,
    arg3: boolean
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("fish");
    var loc3;
    (loc3 = new SerializeStream()).writeString(arg2);
    loc3.writeBool(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getAutoFeedSettings_async(
    arg1: AMI_IOperation_getAutoFeedSettings
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getAutoFeedSettings");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getBossQuestion_async(
    arg1: AMI_IOperation_getBossQuestion,
    arg2: SEntityId
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getBossQuestion");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getCopySealItem_async(
    arg1: AMI_IOperation_getCopySealItem,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getCopySealItem");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getCrossSecretItem_async(
    arg1: AMI_IOperation_getCrossSecretItem,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getCrossSecretItem");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getDirectionCopyItem_async(
    arg1: AMI_IOperation_getDirectionCopyItem,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getDirectionCopyItem");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getExplorerRecords_async(
    arg1: AMI_IOperation_getExplorerRecords,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getExplorerRecords");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getGroupBuyInfo_async(arg1: AMI_IOperation_getGroupBuyInfo): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getGroupBuyInfo");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getMagicTowerQuestion_async(
    arg1: AMI_IOperation_getMagicTowerQuestion,
    arg2: boolean
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getMagicTowerQuestion");
    var loc3;
    (loc3 = new SerializeStream()).writeBool(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getMountCopyDrop_async(
    arg1: AMI_IOperation_getMountCopyDrop,
    arg2: int,
    arg3: string
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getMountCopyDrop");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeString(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public getUpgradeCrossSecretItem_async(
    arg1: AMI_IOperation_getUpgradeCrossSecretItem,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("getUpgradeCrossSecretItem");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public guildDefenseStructureUpgrade_async(
    arg1: AMI_IOperation_guildDefenseStructureUpgrade,
    arg2: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("guildDefenseStructureUpgrade");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public move_async(arg1: AMI_IOperation_move, arg2: Array<any>): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("move");
    var loc3 = new SerializeStream();
    SeqPointHelper.write(loc3, arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public pass_async(
    arg1: AMI_IOperation_pass,
    arg2: EPassType,
    arg3: int,
    arg4: int,
    arg5: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("pass");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    loc3.writeInt(arg3);
    loc3.writeInt(arg4);
    loc3.writeInt(arg5);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public pickFishItem_async(
    arg1: AMI_IOperation_pickFishItem,
    arg2: string,
    arg3: boolean
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("pickFishItem");
    var loc3;
    (loc3 = new SerializeStream()).writeString(arg2);
    loc3.writeBool(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public pikeEntity_async(
    arg1: AMI_IOperation_pikeEntity,
    arg2: SEntityId
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("pikeEntity");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public pikeItem_async(
    arg1: AMI_IOperation_pikeItem,
    arg2: SEntityId,
    arg3: Map<any, any> /* flash.utils.Dictionary */
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("pikeItem");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    DictStrIntHelper.write(loc3, arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public registGroupBuy_async(
    arg1: AMI_IOperation_registGroupBuy,
    arg2: int,
    arg3: int,
    arg4: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("registGroupBuy");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeInt(arg3);
    loc3.writeInt(arg4);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public removeSelfBuffer_async(arg1: AMI_IOperation_removeSelfBuffer): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("removeSelfBuffer");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public revival_async(
    arg1: AMI_IOperation_revival,
    arg2: ERevivalType,
    arg3: EPrictUnit
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("revival");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    arg3.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public saveAutoFeedMemory_async(
    arg1: AMI_IOperation_saveAutoFeedMemory,
    arg2: Array<any>,
    arg3: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("saveAutoFeedMemory");
    var loc3 = new SerializeStream();
    SeqIntHelper.write(loc3, arg2);
    loc3.writeInt(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public saveAutoFeedSettings_async(
    arg1: AMI_IOperation_saveAutoFeedSettings,
    arg2: Map<any, any> /* flash.utils.Dictionary */,
    arg3: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("saveAutoFeedSettings");
    var loc3 = new SerializeStream();
    DictIntStrHelper.write(loc3, arg2);
    loc3.writeInt(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public setMode_async(
    arg1: AMI_IOperation_setMode,
    arg2: EEntityFightMode
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("setMode");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public setPetGoal_async(
    arg1: AMI_IOperation_setPetGoal,
    arg2: SEntityId
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("setPetGoal");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public sixtyCopyOperation_async(
    arg1: AMI_IOperation_sixtyCopyOperation,
    arg2: boolean,
    arg3: int,
    arg4: Array<any>,
    arg5: SPoint
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("sixtyCopyOperation");
    var loc3;
    (loc3 = new SerializeStream()).writeBool(arg2);
    loc3.writeInt(arg3);
    SeqEntityIdHelper.write(loc3, arg4);
    arg5.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public startFly_async(arg1: AMI_IOperation_startFly): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("startFly");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public startRoastFish_async(arg1: AMI_IOperation_startRoastFish): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("startRoastFish");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public sunBathMakeUp_async(arg1: AMI_IOperation_sunBathMakeUp): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("sunBathMakeUp");
    var loc3 = new SerializeStream();
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useItemInCrossSecret_async(
    arg1: AMI_IOperation_useItemInCrossSecret,
    arg2: boolean,
    arg3: int,
    arg4: Array<any>,
    arg5: SPoint
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useItemInCrossSecret");
    var loc3;
    (loc3 = new SerializeStream()).writeBool(arg2);
    loc3.writeInt(arg3);
    SeqEntityIdHelper.write(loc3, arg4);
    arg5.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useItemInDefenseCopy_async(
    arg1: AMI_IOperation_useItemInDefenseCopy,
    arg2: string
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useItemInDefenseCopy");
    var loc3;
    (loc3 = new SerializeStream()).writeString(arg2);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useItemInUpgradeCrossSecret_async(
    arg1: AMI_IOperation_useItemInUpgradeCrossSecret,
    arg2: boolean,
    arg3: int,
    arg4: Array<any>,
    arg5: SPoint
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useItemInUpgradeCrossSecret");
    var loc3;
    (loc3 = new SerializeStream()).writeBool(arg2);
    loc3.writeInt(arg3);
    SeqEntityIdHelper.write(loc3, arg4);
    arg5.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useSkillInDefenseCopy_async(
    arg1: AMI_IOperation_useSkillInDefenseCopy,
    arg2: SDefenseUseSkill
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useSkillInDefenseCopy");
    var loc3 = new SerializeStream();
    arg2.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useSocoreInDefenseCopy_async(
    arg1: AMI_IOperation_useSocoreInDefenseCopy,
    arg2: int,
    arg3: int
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useSocoreInDefenseCopy");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeInt(arg3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public useSpecailSkillInFireIsland_async(
    arg1: AMI_IOperation_useSpecailSkillInFireIsland,
    arg2: int,
    arg3: int,
    arg4: Array<any>,
    arg5: SPoint
  ): void {
    var loc1 = this.makeContext(this.session);
    var loc2 = this.makeCall("useSpecailSkillInFireIsland");
    var loc3;
    (loc3 = new SerializeStream()).writeInt(arg2);
    loc3.writeInt(arg3);
    SeqEntityIdHelper.write(loc3, arg4);
    arg5.__write(loc3);
    Outgoing.invokeAsync(loc1, loc2, loc3, arg1);
    return;
  }

  public static /* const */ NAME: string = "Message.Game.IOperation";
}
